====== PgBouncer ======

PgBouncer est le pooler de connexion PostgreSQL. Un pooler de connexion permet de laisser les connexions ouvertes, ce qui rend plus rapide la connexion aux bases de données diminuant les délais de connexions à celle ci.

===== Installation =====

PgBouncer existe sous forme de paquet. apt://pgbouncer

===== Configuration =====

PgBouncer se positionne entre la base de données postgres et le client. Il fait office de relais. Il faut déclarer les bases que l'on souhaite rendre accessible par PgBouncer

<code>
vi /etc/pgbouncer/pgbouncer.ini
</code>

<code>
nombasepgboucner = host=127.0.0.1 dbname=nombasesurleserveur
</code>

Un fichier d'utilisateur est à mettre à jour également. Il contient la liste des utilisateurs et leurs mots de passes autorisés à accéder au pgBouncer.

<code>
vi /etc/pgbouncer/userlist.txt
</code>

<code>
"utilisateur" "motdepasse"
</code>

Note : Le pooler peut être installé sur une autre machine, que le serveur de base de données.

===== Démarrage =====

Nous avons configuré notre pgBouncer. Il faut maintenant le démarrer.

<code>
/etc/init.d/pgbouncer start
</code>

Pour forcer le démarrage du pgBouncer au lancement de la machine passer la valeur **start = 1** dans le fichier suivant
<code>
vi /etc/default/pgbouncer
</code>

===== Test de la connexion =====
Pour tester votre connexion.
<code>
psql -h HostMachine -p 6432 -U utilisateur nombasepgboucner
</code>

Note le port par défaut de pgBouncer est le 6432. Il peut être modifier dans le fichier /etc/pgbouncer/userlist.txt

